.TH radamsa 1 "March 28, 2012"
.SH NAME
radamsa \- a general purpose fuzzer
.SH SYNOPSIS
.B radamsa
.RI [ options ] " " [ sample-path ] " ..."
.SH DESCRIPTION
Radamsa is a general purpose data fuzzer. It reads data from given sample files,
or standard input if none are given, and outputs modified data. It is usually 
used to generate malformed data for testing programs.
.SH OPTIONS
This program follows the usual GNU command line syntax, with long
options starting with two dashes (`-').
A summary of options is included below.
.TP
.BR \-h ", " \-\-help
Show a shorter summary of options.
.TP
.BR \-V ", " \-\-version
Show program version.
.TP
.BR \-o ", " \-\-output " \fIpattern"
Specify where to write the modified data. By default the data is written to standard output. The pattern can be a path, in which %n is filled to be the test case number if present, :n to have the data sent to TCP clients connecting to local port n, or a.b.c.d:n to have radamsa connect to port n of IPv4 address a.b.c.d to send each output.
.TP
.BR \-n ", " \-\-count " \fIn"
How many outputs to generate based on the sample(s). Giving -1 or inf causes data to be generated forever. The default is 1.
.TP
.BR \-s ", " \-\-seed " \fIn"
Start from random state n, which is a decimal number. Starting from the same random state with the same command line arguments and samples causes the same outputs to be generated. If no seed is given explicitly radamsa reads a random one from /dev/urandom or takes the current time in milliseconds.
.TP
.BR \-M ", " \-\-meta " \fIpath"
Write metadata about generated data to given path. - can be used to have the metadata written to standard output. The metadata contains the seed followed by one line per testcase.
.TP
.BR \-l ", " \-\-list
Show all available mutations, patterns and generators along with their descriptions.
.TP
.BR \-r ", " \-\-recursive
Include samples from directories recursively.
.TP
.BR \-v ", " \-\-verbose
Print what is being done.
.TP
.BR \-m ", " \-\-mutations " \fIstring"
Request the initial mutation probabilities manually. This is generally not recommended and the options will change in the future versions.
.TP
.BR \-p ", " \-\-patterns " \fIstring"
Request the mutation patterns manually. This is generally not recommended and the options will change in the future versions.
.TP
.BR \-g ", " \-\-generators " \fIstring"
Request the data stream generator probabilities manually. This is generally not recommended and the options will change in the future versions.
.SH EXAMPLES
 $ cat file | radamsa | program -
 $ radamsa samples/*.foo | program -
 $ radamsa -o test-%n.foo -n 100 samples/*.foo
 $ radamsa -o :80 -n inf samples/*.resp 
 $ radamsa -o 127.0.0.1:80 -n inf samples/*.req 
.SH SEE ALSO
.BR zzuf (1)
.SH BUGS
Bugs in radamsa can be filed to https://gitlab.com/akihe/radamsa or sent to aki.helin@iki.fi. Bugs outside of radamsa should be filed to their respective bug trackers. 
.SH AUTHOR
Radamsa and this manual page were written by Aki Helin <aki.helin@iki.fi> at OUSPG.
